package url_manager

//import (
//	"cd-crawler/types"
//)
//
//type UrlQueue struct {
//	RequestChan chan types.UrlRequest
//}
//
//// 添加url
//func (u *UrlQueue) UrlPush(r types.UrlRequest) {
//	//fmt.Printf("urlManager;%+v\n", r)
//	u.RequestChan <- r
//}
//
//// 取出url
//func (u *UrlQueue) UrlPop() types.UrlRequest {
//	return <-u.RequestChan
//}

//func (u *UrlQueue) MakeQueueChan() chan types.UrlRequest {
//	u.requestChan = make(chan types.UrlRequest)
//	return u.requestChan
//	//go u.UrlWork()
//}

//
//// 添加url
//func (u *UrlQueue) UrlPush(r types.UrlRequest) {
//	//fmt.Printf("urlManager;%+v\n", r)
//	go func() { u.requestChan <- r }()
//}
//
//// 工作
//func (u *UrlQueue) UrlWork() {
//	for {
//		r := <-u.requestChan
//
//		//fmt.Printf("%+v\n", r)
//
//		if r.ParseFuc == "" {
//			//log.Printf("该链接(%s)已经是最底层链接了\n", urlRequest.Url)
//			continue
//		}
//
//		reader, err := download.DownUrl(r.Url)
//		if err != nil {
//			log.Fatal(err)
//		}
//
//		//解析内容
//		parseResult := parser.Distribute(types.ParseParams{
//			Reader: reader,
//			Url:    r.Url,
//		}, r.ParseFuc)
//
//		//fmt.Printf("%+v\n", parseResult)
//
//		for _, urlR := range parseResult.UrlRequest {
//			u.UrlPush(urlR)
//		}
//
//		for _, item := range parseResult.Item {
//			storage.Save(item)
//			//log.Printf("%+v", item)
//		}
//	}
//}

//
//type UrlQueue struct {
//	request []types.UrlRequest
//}
//
//// 添加url
//func (u *UrlQueue) UrlPush(r types.UrlRequest) {
//	u.request = append(u.request, r)
//}
//
//// 取出url
//func (u *UrlQueue) UrlPop() types.UrlRequest {
//	if len(u.request) < 1 {
//		return types.UrlRequest{}
//	}
//	r := u.request[0]
//	u.request = u.request[1:]
//	return r
//}
//
//// 判断是否为空
//func (u *UrlQueue) IsEmpty() bool {
//	if len(u.request) > 1 {
//		return false
//	}
//	return true
//}
